Comments, questions, wish-lists, and problems can be sent via mail to Nivek Research, 810 Oakley Court, Cary, North Carolina, 27511 or via email to nivek@kagi.com.
╩
Symbionts is an extension that monitors the startup process. Symbionts displays the name and number of bytes of memory each system extension allocates from the system heap. The name and number appear beneath the extension's icon, and since the name is usually truncated, Symbionts also displays it in the menu bar. Symbionts even shows the icons for those extensions that don't normally reveal themselves.
╩
Symbionts Control (seen above) is a control panel that sets the preferences for the Symbionts extension. It also allows the review of the information collected by the Symbionts extension. Additionally, the control panel is used to manage the loading of system extensions without having to dig around in the System folder. Extension can be enabled and disabled simply by double-clicking on the extension icon and name.
To Install Symbionts select the Symbionts Control control panel and !Symbionts extension and drag them to the Control Panels folder and Extensions folder respectively or drop them on the System Folder and let the Finder automatically place them in the correct folders.
╩
The "!Symbionts" extension ships with a file type of 'INIT', which is the file type of system extensions. However, if Symbionts detects that it is running under System 7.1 or later, it changes its file type to 'scri', a new kind of system extension introduced in System 7.1 that loads earlier than 'INIT's. Loading earlier allows Symbionts to determine where more of your system memory is allocated. This causes Symbionts to miss a few extensions the first time it is run under System 7.1. After restarting, it should catch everything.
If you are one of those few people who switch back and forth between systems or you receive a modified copy of the "!Symbionts" extension, opening the "Symbionts Control" control panel will cause the file type to be set correctly for the current system version.
ÑÑ Please take caution to distribute the original Symbionts, NOT a copy from a System 7.1 Extensions folder. Systems earlier than 7.1 ignore files of type 'scri'. ÑÑ
╩
Engage the caps lock key to have Symbionts pause after all extensions are loaded. A flashing caps lock icon remains at the end of the extension icon list until you release caps lock. The number under this icon is the total amount of system heap memory allocated by all system extensions.
Press and hold the space bar during startup to have the "Symbionts Control" control panel displayed when the "!Symbionts" extension is loaded. System extensions may be reviewed and either enabled or disabled from loading. To dismiss the control panel click in the windows close box or press the command-W key sequence. If for any reason you would like to restart the machine after making changes press the command-R key sequence.
Symbionts Control defaults to showing only the Extension, Control Panels, and System Folder folders and then only those extensions that load at startup. Unchecking the 'Only show the extensions that load at startup' check box will show all extensions and include the Apple Menu Items and Startup Items folders. If Fonts folder will also be shown if running System 7.1 or higher.
Symbionts Control defaults to novice mode when first installed. In novice mode all changes to the system will be confirmed before taking affect. Check the 'Use novice mode' item in the Preferences section of the control panel to turn on novice mode.
By default system extensions are moved to the Trash when the Trash button is pressed. If the option key is pressed the Trash button becomes the Delete button, and system extensions are immediately deleted when the Delete button is pressed.
Yes, I wanted to do command-I for "Get Info" and command-O for "Open" but the Finder processes all key downs when the command key is pressed--even when a control panel is in the front window.
Balloon help is provided for the "Symbionts Control" control panel.
╩
The "!Symbionts" extension and its companion control panel "Symbionts Control" are shareware. And as such you are required to pay the licensing fees as described below if you use the software.
The following pricing is available when registering directly with Nivek research:
U.S. and International pricing
single machine license $20
multiple machine license $15 / additional machine
site license $350
world license $1500
To Purchase Symbionts Control send a check (preferably drawn on a U.S. bank), cashiers check, or postal money order payable to Nivek Research to:
Nivek Research
810 Oakley Court
Cary, North Carolina, 27511
For your convenience Nivek Research also allows registrations to be paid via Kagi Shareware, Inc. See the accompanying Register application included with the Symbionts distribution.
The "!Symbionts" extension is currently distributed with other software packages. When so distributed it may be used freely with the software product with which it was distributed. If you receive the Symbionts extension as part of another software distribution you may purchase Symbionts Control by sending in the shareware registration fee. The "Symbionts Control" control panel is not and may not be distributed with other software packages.
╩
Version 2.6.1
Ñ Added support for label colors.
Ñ Components ('thng's) now show up in extension list even if the 'only show extensions that load at startup' option is in effect; for example, the 'Apple Multimedia Tuner'. The size will be displayed as 'n/a' for not available yet!
Ñ Multimedia tuner not showing up in list when "show extensions only"
Ñ Fixed problem with 'Control Strip Modules (Disabled)' folder name exceeding the Hierarchical File System's maximum name length of 31 characters.
Version 2.6
Ñ Include PowerPC patch, overlay, and "GoNative" extensions sizes in an extensions system heap foot-print size. On Power Macintosh only of course.
Ñ Include system heap usage for Shared Libraries. Both PPC and CFM-68K.
Ñ Include heap usage for Personal Messaging and Combined Service Access Modules when PowerTalk is installed.
Ñ Startup display enhanced to slide under the Welcome to Macintosh alert or Mac¬OS
logo under system 7.5.1.
Ñ Font suitcase/file usage estimates are more accurate.
Ñ Filter Monitor control panel extensions if 'only show extensions that load at startup' is checked.
Ñ Add support for Control Strip Modules folder.
Ñ Startup display enhanced to refreshed after an extension calls InitWindows.
Ñ Fixed startup display problem with System 7.5.1.
Ñ Fixed startup display problem with "Apple Multimedia Tuner".
Ñ Fixed problem printing with QuickDraw GX installed.
Version 2.5
Ñ Font suitcase/file usage now includes file and resource map overhead in the size.
Ñ Application heap sizes shown for background application in the Extensions folder and Applications and Desk Accessories in the Startup Items folder.
Ñ To eliminate confusion extensions that do not loaded at startup are not moved into or out of (Disabled) folders unless 'Only show extensions that load at startup' is unchecked.
Ñ Startup Items and Fonts folders are now displayed even when 'Only show extensions that load at startup' is checked.
Ñ Changed set checking to tighten the test for inclusion within a set. This may cause some items to be excluded; however, it will generally improve the use of sets. This change may also cause the save changes to a set dialog to be displayed, because information in the set is automatically updated when a set is selected.
Ñ Symbionts Control sets the set menu to the last selected set when the control panel is opened and file information collected if and only if the set is still in effect (i.e. no manual changes, installations, etc. have taken place).
Ñ The New Set dialog now displays the name of the set to be copied.
Ñ Correctly handle extensions that choose to display more than one icon during startup.
Ñ Support for the Modern Memory Manager.
Ñ Support for System 7.5 Shutdown Items folder.
Version 2.4.3
Ñ Fixed incompatibility with AccessPC and other extensions that create their own heaps at startup.
Version 2.4.2
Ñ Support for users who have multiple keyboard scripts and Finder file/folder names in non-system scripts.
Ñ Improved accuracy of memory usage numbers for some extensions, special conditions, and some Macintoshes.
Ñ Some extensions want to remain open after startup; however, some do so
in a way that confuses Symbionts. Symbionts now compensates for the situation.
Ñ Fixed problem with type ahead when typing to select an item in a list.
Ñ Fixed problem which garbled the display just after registering under some conditions.
Version 2.4.1
Ñ Startup Items panel now shows memory usage for Applications, Desk Accessories, etc. that are still running when the control panel is opened.
Ñ Oops, I left a debugger trap in. Pressing the Trash button would produce unimplemented trap error or drop into the debugger.
Ñ Fixed problem which caused name to overlay icon during startup if 'Show extension name below icon' is checked, but 'Show extension size below icon' is not.
Version 2.4
Ñ Added view by large and small icons for those people who want more, but less.
Ñ Added shareware notice and shareware registration and registration printing.
Ñ Fonts panel now shows memory usage and other information for font files.
Ñ Several speed improvements to List Manager processing. Especially sorting.
Ñ Fixed incompatibility with System 7.1.1 (Pro). The PowerTalk Extension plays strange games with traps during startup which occasionally would cause problems during startup.
Ñ Added a new check item to enable and disable the display of an extension's memory usage below each icon during startup.
Ñ Added support for option clicking an extension icon. When an extension icon is option clicked it will ask the Finder to open and select the item in a standard Finder window.
Version 2.3.3
Ñ Fixed problems with Quadra 840AV (although the extension sizes may not be exact with some ROM versions).
Ñ Fixed incompatibility with Jasik's "The Debugger" who overlays low-memory globals used by the extension loader.
Ñ Fixed problem with the Symbionts Control control panel which would hang on some
machines if the desktop database was missing system icons.
Version 2.3.2
Ñ Fixed incompatibility with Suitcase 2.1.4 (and other extensions which keep their resource forks open).
Ñ Better support for At Ease and other Finder substitutes.
Ñ Extension not sensing System 7.1 correctly and, therefore, not setting its extension type such that all extensions were begin monitored.
Ñ Fixed problems introduced with Symantec C++ 6.0.1.
Version 2.3.1
Ñ Better size determination for debuggers.
Ñ Fixed visual problems (reduced size of dialog, fixed icon highlighting, and jumping text).
Version 2.3
Ñ Fixed many problems with sets. Also added a Save Set menu to allow changes to be saved before closing the control panel.
Ñ Fixed problem in Symbionts extension which prevented it from correctly calculating memory usage for some extensions.
Ñ Added better support for aliases to unavailable volumes. Specifically the user is no longer prompted to mount AppleShare volumes.
Ñ Added better support for extensions whose icons are not in the desktop database.
Ñ Added support for enabling and disabling folders in the Apple Menu Items and Startup Items folders.
Ñ Added support for custom icons for files and folders.
Version 2.2
Ñ Fixed problem when creating Symbionts Preferences file which prevented user customization from begin correctly saved.
Ñ Added alerts to inform user when a duplicate extension exists in a destination folder and allow them to replace the file.
Ñ Added international support to Symbionts extension by using Script Manager to truncate the names displayed below each extension icon.
Ñ Added option to replace an existing set whenever user enters the same name for a new or renamed set. Pressing the cancel button behaves just as the OK button in previous releases.
Ñ Added better support for aliases to files in special folders. For example, if an alias for battery is in the Startup Items folder and battery is in the Apple Menu Items folder the set would not properly distinguish the two files.
Ñ Added better support for aliases to extensions in Control Panels folder (or anywhere else). Also italicized name of aliases as per the Finder.
Version 2.1
Ñ Displays extension name in the menu bar.
Ñ Added control panel to configure the startup display and manage extensions.
Ñ Added space bar to open control panel during startup to enable/disable extensions.
╩
Ñ "Why is it called 'Symbionts'?"
When I went looking for a name one thought was persistent in my mind--the system and system extensions live together and mutually benefit one another. In biology this is known as symbiosis "the intimate living together of two dissimilar organisms in a mutually beneficial relationship." I was talking with a friend whose background was in biology about the similarities and he suggested the word "symbionts" and after looking up the definition in the dictionary I knew I had found the name.
sym.bi.ont \'sim-.bi--.a:nt, -be--\ \.sim-.bi--'a:nt-ik, -be--\ n [prob.
fr. G, modif. of Gk symbiount-, symbio-n, prp. of symb]ioun : an organism
living in symbiosis; esp : the smaller member of a symbiotic pair -
sym.bi.on.tic aj
Ñ "Is Symboints PowerPC Native?"
Presently the Symbionts extension is not native. Why? Well, two reasons 1) The Macintosh boot code is still 680x0 code and most if not all 'INIT' extensions are really 680x0 code 2) Symbionts--unlike some extension managers--patchs no traps thereby avoids performance problems introduced by by patching PowerPC Toolbox calls with 680x0 code.
Ñ "What does the number below each extension icon really represent?"
The number represents the amount of memory the extension allocated in the system heap or in high memory while loading which is not released back to the system. It does not take into account any change in the initial amount of memory allocated. Some extensions--almost none--may release memory later, and others--almost all--may allocate additional memory. For example, QuickTime 1.6 which uses about 20K at startup will use additional memory when playing a movie.
Ñ "Could Symbionts prevent extensions like AppleShare from clearing the screen?"
It could. However, this means patching traps and using additional system memory both of which conflicted with two of the original goals of Symbionts--keep the system memory usage down and not leave remnants that would interfere with system operation. Symbionts will redraw the icons for all extensions loaded before the screen was cleared after the extension finishs loading.
Ñ "Why are there new folders in my system folder with names liked 'Extensions (disabled)' after using Symbionts Control?"
Symbionts Control moves disabled system extensions into folders with the same name as their original folder but with the word '(disabled)' append to the end of the folder name. This naming convention was first introduced by Ricardo Batista in his software "Extensions Manager." By popular demand "Symbionts Control" uses the same folders and folder names as "Extensions Manager."
Ñ "Why is the extension named '!Symbionts' and not 'Symbionts'?"
Currently system extensions in the 'Extensions' folder are loaded in alphabetical order. The exclamation point (!) is the first visible character in that ordering. Many extensions use a blank ( ), but I dislike the character since it is easily overlooked. In order for Symbionts to collect information for all extensions it must be loaded first; Hence, the name.
Ñ "Is Symbionts incompatible with any other extensions?"
To my knowledge these are the only extensions which are incompatible:
IconWrap 1.2 - The conflict is not harmful; however, it does cause the icons displayed at startup to appear jumbled.
Ñ When 'Confirm all changes (novice mode)' is checked and the Symbionts Control control panel is closed I may get a dialog asking to 'Save changes to some set' when no changes have been made. Why?
Symbionts Control will update information in a set whenever it is selected. This will cause you to receive the cautionary warning. It is best to save the set by pressing OK.
╩
Problem #1
Recently, after installing Apple's AOCE beta-package I went to the 'About this Macintosh' menu to check out the memory usage on my Macintosh. I was completely blown away to discover that my System Software was now using 5.8MMMEGABYTES.
Problem #2
Lots of Extensions don't display icons during startup using Paul Mercer's and other's ShowINIT mechanism. This makes it difficult to even know that something is being loaded. It would have been nice if Apple had officially adopted (and not just acknowledged) Andy Capps' idea, but such is life.
Problem #3
Only a few Extensions which use Paul Mercer's ShowINIT mechanism understand the concept of wrapping up to the next row when the bottom row of icons runs off the right-hand edge of the screen. Thus, even those Extensions which display icons during startup may be unknown since they aren't visible.
Problem #4
I checked around the Internet, and various other places and pulled down several Application/Extensions which would produce nice detailed reports about every extension, the traps they patched, the traps they called, the vectors they patched, the memory they used, and more. While these reports were handy the information I was after--who was loaded and how much memory did they used--was hard to locate.
Solution
Symbionts extends Paul Mercer's ShowINIT mechanism to display icons for ALL extensions even if the extension does not display one itself. It also scrolls the list nicely so all extensions are visible on the screen, it displays the memory usage for each extension below its icon, and it allows the startup process to be paused to give the user a chance to read through the list.
╩
This software is NOT in the public domain; rather it is ⌐ Copyright B. Kevin Hardman 1993-1994 and ⌐ Copyright Nivek Research 1995. You may freely copy and distribute this software, provided that you do not charge for it. This software MAY be included on disk or CD-ROM of public domain and shareware software sold by a NON-PROFIT organization. This software MAY NOT be included in any commercial software collection sold for profit, nor may it be bundled with any commercial software, hardware, books, or other media without the prior written consent of the author. When distributed, the "Symbionts" extension and "Symbionts Control" control panel must be accompanied by this documentation file IN FULL.
╩
The original author, B. Kevin Hardman, and current owner Nivek Research make no warranties, either express or implied, regarding the fitness of the "Symbionts" extension or the "Symbionts Control" control panel for any particular purpose. Use the "Symbionts" extension and the "Symbionts Control" control panel at your own risk. The author claims no liability for data loss or any other problems caused directly or indirectly by the "Symbionts" extension or "Symbionts Control" control panel.